1
通往跨平台 GPU 運算之路
AI022Lesson 4
00:00

可攜性異質運算介面(HIP) 提供一個 C++ 執行時 API,抽象化硬體層次,以支援 NVIDIA 及 AMD GPU 的統一程式碼基礎。此路徑透過模擬 CUDA 環境並針對 ROCm 後端,消除供應商綁定問題。

1. 環境設定

初始化從設定環境變數開始,將 hipcc 編譯器指向正確的工具鏈:

$ export HIP_PATH=[MYHIP]
$ export PATH=$PATH:[MYHIP]/bin

2. 標準化工具鏈

hipcc 編譯器扮演智慧包裝的角色。在建置自動化方面, HIP_PATH ?= $(shell hipconfig --path) 邏輯可確保您的 Makefile 在任何系統設定下都能動態尋找 HIP 安裝位置。

3. 版本控制邏輯

HIP 使用決定性的版本公式,以程式化方式處理各版本間的功能可用性:

$$\text{HIP\_VERSION} = \text{HIP\_VERSION\_MAJOR} \times 10^7 + \text{HIP\_VERSION\_MINOR} \times 10^5 + \text{HIP\_VERSION\_PATCH}$$

HIP 原始碼NVIDIA(NVCC)AMD(Clang/ROCm)

4. 核心執行時對應功能

HIP 提供 hipMalloc 以及 hipLaunchKernel 作為 CUDA 記憶體與執行呼叫的功能對應,支援「單一來源」開發哲學。

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>